package org.xukai.common.spel;

import java.util.List;
import java.util.Map;

/**
 * 字段解析器，将相关的变量解析成变量值
 * @author JackyLIU
 *
 */
public interface IFieldResolver {
	
	/**
	 * 获取键值翻译器
	 * @return
	 */
	public IKeyTranslater getKeyTranslater();
	
	/**
	 * 解析键值数组，参数中除了键值数组，还需要相关的领域对象，以便解析器能够找出领域中的值，并整合到Map中返回
	 * ，Map中的key实际上就是参数中keys数组中的键值，Object则为domain中的某个field值
	 * @param keys
	 * @param domains
	 * @return
	 */
	public Map<String, Object> resolve(List<String> keys, Object... domains) throws TVEException;
}
